--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Node / ReticulumProjects / Sideband.git / files / libs / able / tests / notebooks / test_scan_filters.md
libs/able/tests/notebooks/test_scan_filters.md master (8b8a5035) Text, 5.96 KB
jupyter:
jupytext:
formats: ipynb,md
text_representation:
extension: .md
format_name: markdown
format_version: '1.3'
jupytext_version: 1.11.2
kernelspec:
display_name: Python 3
language: python
name: python3
Setup
T282828
Tff7b72%Te6edf3run Te6edf3initTff7b72.Td2a8ffipynb
T282828
Tff7b72%Tff7b72%Te6edf3there
Tff7b72from T7ee787ableT7ee787.T7ee787filters Tff7b72import Tff7b72*
Tff7b72class T56d364BLETb4b4b4(Te6edf3BluetoothDispatcherTb4b4b4)Tb4b4b4:
Tff7b72def Td2a8ffon_scan_startedTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3successTb4b4b4)Tb4b4b4:
Te6edf3resultsTff7b72.Td2a8ffstarted Tff7b72= Te6edf3success
Tff7b72def Td2a8ffon_scan_completedTb4b4b4(Tff7b72selfTb4b4b4)Tb4b4b4:
Te6edf3resultsTff7b72.Td2a8ffcompleted Tff7b72= T79c0ff1
Tff7b72def Td2a8ffon_deviceTb4b4b4(Tff7b72selfTb4b4b4, Te6edf3deviceTb4b4b4, Te6edf3rssiTb4b4b4, Te6edf3advertisementTb4b4b4)Tb4b4b4:
Te6edf3resultsTff7b72.Td2a8ffdevicesTff7b72.Td2a8ffappendTb4b4b4(Te6edf3deviceTb4b4b4)
Te6edf3ble Tff7b72= Te6edf3BLETb4b4b4(Tb4b4b4)
T282828
Tff7b72%Tff7b72%Te6edf3there
Te6edf3BluetoothDevice Tff7b72= Te6edf3autoclassTb4b4b4(Ta5d6ff"Ta5d6ffandroid.bluetooth.BluetoothDeviceTa5d6ff"Tb4b4b4)
Te6edf3ScanResult Tff7b72= Te6edf3autoclassTb4b4b4(Ta5d6ff"Ta5d6ffandroid.bluetooth.le.ScanResultTa5d6ff"Tb4b4b4)
Te6edf3ScanRecord Tff7b72= Te6edf3autoclassTb4b4b4(Ta5d6ff"Ta5d6ffandroid.bluetooth.le.ScanRecordTa5d6ff"Tb4b4b4)
Te6edf3Parcel Tff7b72= Te6edf3autoclassTb4b4b4(Ta5d6ff"Ta5d6ffandroid/os/ParcelTa5d6ff"Tb4b4b4)
Te6edf3ParcelUuid Tff7b72= Te6edf3autoclassTb4b4b4(Ta5d6ff'Ta5d6ffandroid.os.ParcelUuidTa5d6ff'Tb4b4b4)
Tff7b72def Td2a8fffilter_matchesTb4b4b4(Te6edf3fTb4b4b4, Te6edf3scan_resultTb4b4b4)Tb4b4b4:
Tffa657printTb4b4b4(Te6edf3fTb4b4b4, Te6edf3fTff7b72.Td2a8ffbuildTb4b4b4(Tb4b4b4)Tff7b72.Td2a8ffmatchesTb4b4b4(Te6edf3scan_resultTb4b4b4)Tb4b4b4)
Tff7b72def Td2a8ffmock_deviceTb4b4b4(Tb4b4b4)Tb4b4b4:
T8b949e"""Return BluetoothDevice instance with address=AA:AA:AA:AA:AA:AA"""
Te6edf3device_data Tff7b72= Tb4b4b4[T79c0ff17Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff65Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff65Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff58Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff65Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff65Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff58Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff65Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff65Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff58Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff65Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff65Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff58Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff65Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff65Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff58Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff65Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff65Tb4b4b4]
Te6edf3p Tff7b72= Te6edf3ParcelTff7b72.Td2a8ffobtainTb4b4b4(Tb4b4b4)
Te6edf3pTff7b72.Td2a8ffunmarshallTb4b4b4(Te6edf3device_dataTb4b4b4, T79c0ff0Tb4b4b4, Tffa657lenTb4b4b4(Te6edf3device_dataTb4b4b4)Tb4b4b4)
Te6edf3pTff7b72.Td2a8ffsetDataPositionTb4b4b4(T79c0ff0Tb4b4b4)
Tff7b72return Te6edf3BluetoothDeviceTff7b72.Td2a8ffCREATORTff7b72.Td2a8ffcreateFromParcelTb4b4b4(Te6edf3pTb4b4b4)
Tff7b72def Td2a8ffmock_scan_resultTb4b4b4(Te6edf3recordTb4b4b4)Tb4b4b4:
Tff7b72return Te6edf3ScanResultTb4b4b4(Te6edf3mock_deviceTb4b4b4(Tb4b4b4)Tb4b4b4, Te6edf3ScanRecordTff7b72.Td2a8ffparseFromBytesTb4b4b4(Te6edf3recordTb4b4b4)Tb4b4b4, Tff7b72-T79c0ff33Tb4b4b4, T79c0ff1633954394000Tb4b4b4)
Tff7b72def Td2a8ffmock_test_app_scan_resultTb4b4b4(Tb4b4b4)Tb4b4b4:
Tff7b72return Te6edf3mock_scan_resultTb4b4b4(
Tb4b4b4[T79c0ff2Tb4b4b4, T79c0ff1Tb4b4b4, T79c0ff6Tb4b4b4, T79c0ff17Tb4b4b4, T79c0ff6Tb4b4b4, T79c0ff27Tb4b4b4, T79c0ff197Tb4b4b4, T79c0ff213Tb4b4b4, T79c0ff165Tb4b4b4, T79c0ff2Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff200Tb4b4b4, T79c0ff184Tb4b4b4, T79c0ff227Tb4b4b4, T79c0ff17Tb4b4b4, T79c0ff17Tb4b4b4, T79c0ff193Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff13Tb4b4b4,
T79c0ff254Tb4b4b4, T79c0ff22Tb4b4b4, T79c0ff12Tb4b4b4, T79c0ff9Tb4b4b4, T79c0ff75Tb4b4b4, T79c0ff105Tb4b4b4, T79c0ff118Tb4b4b4, T79c0ff121Tb4b4b4, T79c0ff66Tb4b4b4, T79c0ff76Tb4b4b4, T79c0ff69Tb4b4b4, T79c0ff84Tb4b4b4, T79c0ff101Tb4b4b4, T79c0ff115Tb4b4b4, T79c0ff116Tb4b4b4,
T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0
Tb4b4b4]
Tb4b4b4)
Tff7b72def Td2a8ffmock_beacon_scan_resultTb4b4b4(Tb4b4b4)Tb4b4b4:
T8b949e"""0x4C, # Apple Manufacturer ID
bytes([
0x2, # SubType: Custom Manufacturer Data
0x15 # Subtype lenth
]) +
uuid + # UUID of beacon: UUID=8da683d6-e574-4a2e-bb9b-d83f2d05fc12
bytes([
0, 15, # Major value
0, 1, # Minor value
10 # RSSI, dBm at 1m
])
"""
Tff7b72return Te6edf3mock_scan_resultTb4b4b4(Tffa657bytesTff7b72.Td2a8fffromhexTb4b4b4(Ta5d6ff'Ta5d6ff1AFF4C0002158DA683D6E5744A2EBB9BD83F2D05FC12000F00010ATa5d6ff'Tb4b4b4)Tb4b4b4)
Tff7b72def Td2a8ffmock_battery_scan_resultTb4b4b4(Tb4b4b4)Tb4b4b4:
T8b949e"""Battery ("0000180f-0000-1000-8000-00805f9b34fb" or "180f" in short form)
service data: 34% (0x22)
"""
Tff7b72return Te6edf3mock_scan_resultTb4b4b4(Tffa657bytesTff7b72.Td2a8fffromhexTb4b4b4(Ta5d6ff'Ta5d6ff04160F1822Ta5d6ff'Tb4b4b4)Tb4b4b4)
Te6edf3beacon Tff7b72= Te6edf3mock_beacon_scan_resultTb4b4b4(Tb4b4b4)
Te6edf3battery Tff7b72= Te6edf3mock_battery_scan_resultTb4b4b4(Tb4b4b4)
Te6edf3testapp Tff7b72= Te6edf3mock_test_app_scan_resultTb4b4b4(Tb4b4b4)
Test device is found with scan filters set
T282828
Tff7b72%Tff7b72%Te6edf3there
Te6edf3results Tff7b72= Te6edf3ResultsTb4b4b4(Tb4b4b4)
Te6edf3bleTff7b72.Td2a8ffstart_scanTb4b4b4(Te6edf3filtersTff7b72=Tb4b4b4[
Te6edf3DeviceNameFilterTb4b4b4(Ta5d6ff"Ta5d6ffKivyBLETestTa5d6ff"Tb4b4b4) Tff7b72& Te6edf3ServiceUUIDFilterTb4b4b4(Ta5d6ff"Ta5d6ff16fe0d00-c111-11e3-b8c8-0002a5d5c51bTa5d6ff"Tb4b4b4)Tb4b4b4,
Tb4b4b4]Tb4b4b4)
T282828
Te6edf3sleepTb4b4b4(T79c0ff10Tb4b4b4)
T282828
Tff7b72%Tff7b72%Te6edf3there
Te6edf3bleTff7b72.Td2a8ffstop_scanTb4b4b4(Tb4b4b4)
T282828
Te6edf3sleepTb4b4b4(T79c0ff2Tb4b4b4)
T282828
Tff7b72%Tff7b72%Te6edf3there
Tffa657printTb4b4b4(Tffa657setTb4b4b4(Tb4b4b4[Te6edf3devTff7b72.Td2a8ffgetNameTb4b4b4(Tb4b4b4) Tff7b72for Te6edf3dev Tff7b72in Te6edf3resultsTff7b72.Td2a8ffdevicesTb4b4b4]Tb4b4b4)Tb4b4b4)
Test device is not found: filtered out by name
T282828
Tff7b72%Tff7b72%Te6edf3there
Te6edf3results Tff7b72= Te6edf3ResultsTb4b4b4(Tb4b4b4)
Te6edf3bleTff7b72.Td2a8ffstart_scanTb4b4b4(Te6edf3filtersTff7b72=Tb4b4b4[Te6edf3DeviceNameFilterTb4b4b4(Ta5d6ff"Ta5d6ffNo-such-device-8458e2e35158Ta5d6ff"Tb4b4b4)Tb4b4b4]Tb4b4b4)
T282828
Te6edf3sleepTb4b4b4(T79c0ff10Tb4b4b4)
T282828
Tff7b72%Tff7b72%Te6edf3there
Te6edf3bleTff7b72.Td2a8ffstop_scanTb4b4b4(Tb4b4b4)
T282828
Te6edf3sleepTb4b4b4(T79c0ff2Tb4b4b4)
T282828
Tff7b72%Tff7b72%Te6edf3there
Tffa657printTb4b4b4(Te6edf3resultsTff7b72.Td2a8ffdevicesTb4b4b4)
Test scan filter mathes
T282828
Tff7b72%Tff7b72%Te6edf3there
Te6edf3filter_matchesTb4b4b4(Te6edf3EmptyFilterTb4b4b4(Tb4b4b4)Tb4b4b4, Te6edf3testappTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3EmptyFilterTb4b4b4(Tb4b4b4)Tb4b4b4, Te6edf3beaconTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3EmptyFilterTb4b4b4(Tb4b4b4)Tb4b4b4, Te6edf3batteryTb4b4b4)
T282828
Tff7b72%Tff7b72%Te6edf3there
Te6edf3filter_matchesTb4b4b4(Te6edf3DeviceAddressFilterTb4b4b4(Ta5d6ff"Ta5d6ffAA:AA:AA:AA:AA:AATa5d6ff"Tb4b4b4)Tb4b4b4, Te6edf3testappTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3DeviceAddressFilterTb4b4b4(Ta5d6ff"Ta5d6ffAA:AA:AA:AA:AA:ABTa5d6ff"Tb4b4b4)Tb4b4b4, Te6edf3testappTb4b4b4)
Tff7b72tryTb4b4b4:
Te6edf3filter_matchesTb4b4b4(Te6edf3DeviceAddressFilterTb4b4b4(Ta5d6ff"Ta5d6ffAATa5d6ff"Tb4b4b4)Tb4b4b4, Te6edf3testappTb4b4b4)
Tff7b72except Tf85149Exception Tff7b72as Te6edf3excTb4b4b4:
Tffa657printTb4b4b4(Te6edf3excTb4b4b4)
T282828
Tff7b72%Tff7b72%Te6edf3there
Te6edf3filter_matchesTb4b4b4(Te6edf3DeviceNameFilterTb4b4b4(Ta5d6ff"Ta5d6ffKivyBLETestTa5d6ff"Tb4b4b4)Tb4b4b4, Te6edf3testappTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3DeviceNameFilterTb4b4b4(Ta5d6ff"Ta5d6ffKivyBLETesTa5d6ff"Tb4b4b4)Tb4b4b4, Te6edf3testappTb4b4b4)
T282828
Tff7b72%Tff7b72%Te6edf3there
Te6edf3filter_matchesTb4b4b4(Te6edf3ManufacturerDataFilterTb4b4b4(T79c0ff0x4cTb4b4b4, Tb4b4b4[Tb4b4b4]Tb4b4b4)Tb4b4b4, Te6edf3testappTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ManufacturerDataFilterTb4b4b4(T79c0ff0x4cTb4b4b4, Tb4b4b4[Tb4b4b4]Tb4b4b4)Tb4b4b4, Te6edf3beaconTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ManufacturerDataFilterTb4b4b4(T79c0ff0x4cTb4b4b4, Tb4b4b4[T79c0ff0x2Tb4b4b4, T79c0ff0x15Tb4b4b4, T79c0ff0x8dTb4b4b4, T79c0ff0xa6Tb4b4b4, T79c0ff0x83Tb4b4b4, T79c0ff0xd6Tb4b4b4, T79c0ff0xe5Tb4b4b4]Tb4b4b4)Tb4b4b4, Te6edf3beaconTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ManufacturerDataFilterTb4b4b4(T79c0ff0x4cTb4b4b4, Tb4b4b4[T79c0ff0x2Tb4b4b4, T79c0ff0x15Tb4b4b4, T79c0ff0x8dTb4b4b4, T79c0ff0xa6Tb4b4b4, T79c0ff0x83Tb4b4b4, T79c0ff0xd6Tb4b4b4, T79c0ff0xaaTb4b4b4]Tb4b4b4)Tb4b4b4, Te6edf3beaconTb4b4b4)
Te6edf3filter_matchesTb4b4b4(
Te6edf3ManufacturerDataFilterTb4b4b4(T79c0ff0x4cTb4b4b4,
Tb4b4b4[T79c0ff0x2Tb4b4b4, T79c0ff0x15Tb4b4b4, T79c0ff0x8dTb4b4b4, T79c0ff0xa6Tb4b4b4, T79c0ff0x83Tb4b4b4, T79c0ff0xd6Tb4b4b4, T79c0ff0xaaTb4b4b4]Tb4b4b4,
Tb4b4b4[T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4, T79c0ff0x00Tb4b4b4]Tb4b4b4)Tb4b4b4,
Te6edf3beacon
Tb4b4b4)
Te6edf3filter_matchesTb4b4b4(
Te6edf3ManufacturerDataFilterTb4b4b4(T79c0ff0x4cTb4b4b4,
Tb4b4b4[T79c0ff0x2Tb4b4b4, T79c0ff0x15Tb4b4b4, T79c0ff0x8dTb4b4b4, T79c0ff0xa6Tb4b4b4, T79c0ff0x83Tb4b4b4, T79c0ff0xd6Tb4b4b4, T79c0ff0xaaTb4b4b4]Tb4b4b4,
Tb4b4b4[T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4]Tb4b4b4)Tb4b4b4,
Te6edf3beacon
Tb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ManufacturerDataFilterTb4b4b4(T79c0ff0x4cTb4b4b4, Tb4b4b4[T79c0ff0x2Tb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0x8dTb4b4b4, T79c0ff0xa6Tb4b4b4, T79c0ff0x83Tb4b4b4]Tb4b4b4, Tb4b4b4[T79c0ff0xffTb4b4b4, T79c0ff0Tb4b4b4, T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4, T79c0ff0xffTb4b4b4]Tb4b4b4)Tb4b4b4, Te6edf3beaconTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ManufacturerDataFilterTb4b4b4(T79c0ff0x4cTb4b4b4, Ta5d6ffbTa5d6ff'Tffea00\x02Tffea00\x15Ta5d6ff'Tb4b4b4)Tb4b4b4, Te6edf3beaconTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ManufacturerDataFilterTb4b4b4(T79c0ff0x4cTb4b4b4, Ta5d6ffbTa5d6ff'Tffea00\x02Tffea00\x16Ta5d6ff'Tb4b4b4)Tb4b4b4, Te6edf3beaconTb4b4b4)
T282828
Tff7b72%Tff7b72%Te6edf3there
Te6edf3filter_matchesTb4b4b4(Te6edf3ServiceDataFilterTb4b4b4(Ta5d6ff"Ta5d6ff0000180f-0000-1000-8000-00805f9b34fbTa5d6ff"Tb4b4b4, Tb4b4b4[Tb4b4b4]Tb4b4b4)Tb4b4b4, Te6edf3batteryTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ServiceDataFilterTb4b4b4(Ta5d6ff"Ta5d6ff0000180f-0000-1000-8000-00805f9b34fcTa5d6ff"Tb4b4b4, Tb4b4b4[Tb4b4b4]Tb4b4b4)Tb4b4b4, Te6edf3batteryTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ServiceDataFilterTb4b4b4(Ta5d6ff"Ta5d6ff0000180f-0000-1000-8000-00805f9b34fbTa5d6ff"Tb4b4b4, Tb4b4b4[T79c0ff0x22Tb4b4b4]Tb4b4b4)Tb4b4b4, Te6edf3batteryTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ServiceDataFilterTb4b4b4(Ta5d6ff"Ta5d6ff0000180f-0000-1000-8000-00805f9b34fbTa5d6ff"Tb4b4b4, Tb4b4b4[T79c0ff0x21Tb4b4b4]Tb4b4b4)Tb4b4b4, Te6edf3batteryTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ServiceDataFilterTb4b4b4(Ta5d6ff"Ta5d6ff0000180f-0000-1000-8000-00805f9b34fbTa5d6ff"Tb4b4b4, Tb4b4b4[T79c0ff0x21Tb4b4b4]Tb4b4b4, Te6edf3maskTff7b72=Tb4b4b4[T79c0ff0xf0Tb4b4b4]Tb4b4b4)Tb4b4b4, Te6edf3batteryTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ServiceDataFilterTb4b4b4(Ta5d6ff"Ta5d6ff0000180f-0000-1000-8000-00805f9b34fbTa5d6ff"Tb4b4b4, Tb4b4b4[T79c0ff0x21Tb4b4b4]Tb4b4b4, Te6edf3maskTff7b72=Tb4b4b4[T79c0ff0x0fTb4b4b4]Tb4b4b4)Tb4b4b4, Te6edf3batteryTb4b4b4)
T282828
Tff7b72%Tff7b72%Te6edf3there
Te6edf3filter_matchesTb4b4b4(Te6edf3ServiceUUIDFilterTb4b4b4(Ta5d6ff"Ta5d6ff16fe0d00-c111-11e3-b8c8-0002a5d5c51BTa5d6ff"Tb4b4b4)Tb4b4b4, Te6edf3testappTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ServiceUUIDFilterTb4b4b4(Ta5d6ff"Ta5d6ff16fe0d00-c111-11e3-b8c8-0002a5d5c51CTa5d6ff"Tb4b4b4)Tb4b4b4, Te6edf3testappTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ServiceUUIDFilterTb4b4b4(
Ta5d6ff"Ta5d6ff16fe0d00-c111-11e3-b8c8-0002a5d5c51CTa5d6ff"Tb4b4b4,
Ta5d6ff"Ta5d6ffffffffff-ffff-ffff-ffff-ffffffffffffTa5d6ff"
Tb4b4b4)Tb4b4b4, Te6edf3testappTb4b4b4)
Te6edf3filter_matchesTb4b4b4(Te6edf3ServiceUUIDFilterTb4b4b4(
Ta5d6ff"Ta5d6ff16fe0d00-c111-11e3-b8c8-0002a5d5c51CTa5d6ff"Tb4b4b4,
Ta5d6ff"Ta5d6ffffffffff-ffff-ffff-ffff-fffffffffff0Ta5d6ff"
Tb4b4b4)Tb4b4b4, Te6edf3testappTb4b4b4)
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────